package com.example.a_java.dto;

import lombok.Data;

import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 客户回访记录DTO
 */
@Data
public class CustomerVisitDTO {

    /**
     * 回访ID
     */
    private Long id;

    /**
     * 客户ID
     */
    @NotNull(message = "客户ID不能为空")
    private Long custId;

    /**
     * 回访时间
     */
    @NotNull(message = "回访时间不能为空")
    private String visitTime;

    /**
     * 回访方式，PHONE(电话)、VISIT(上门)、EMAIL(邮件)
     */
    @NotBlank(message = "回访方式不能为空")
    private String method;

    /**
     * 回访人
     */
    @NotBlank(message = "回访人不能为空")
    private String visitor;

    /**
     * 回访内容
     */
    @NotBlank(message = "回访内容不能为空")
    private String content;

    /**
     * 客户反馈评分(1-5分)
     */
    @DecimalMin(value = "1.0", message = "评分最小为1分")
    @DecimalMax(value = "5.0", message = "评分最大为5分")
    private BigDecimal feedback;

    /**
     * 下次回访时间
     */
    private String nextVisitTime;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;
} 
